package com.stylefeng.guns.modular.fileManage.dao;

import com.stylefeng.guns.common.constant.cache.Cache;
import com.stylefeng.guns.common.constant.cache.CacheKey;
import com.stylefeng.guns.common.persistence.model.ZyTea;
import com.stylefeng.guns.common.persistence.model.ZyTeaPicture;
import com.stylefeng.guns.core.node.ZTreeNode;
import com.stylefeng.guns.core.page.PageBT;
import org.apache.ibatis.annotations.Param;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

/**
 * 茶叶dao
 *
 * @author fengshuonan
 * @date 2017年2月17日20:28:58
 */
@Repository
public interface ZyTeaDao {

    /**
     * 搜索列表
     */
    List<Map<String,Object>> select(@Param("condition") String condition,@Param("beginTime") String beginTime, @Param("endTime") String endTime);

    /**
     * 更新详情
     */
    void updateDetailById(ZyTea teaFile);

    /**
     * 更新删除状态
     */
    void delete(Integer id);

    /**
     * 查询一页数据
     */
    List<ZyTea> selectOnePage(PageBT pageParam);

    /**
     * 根据ID批量查询
     */
    List<ZyTea> selectByIds(@Param("items") String[] ids);

    /**
     * 根据brewsId查出关联的茶叶id集合
     */
    List<Integer> selectTeaIdsByBrewsId(@Param("brewsId")Integer brewsId);

    /**
     * 根据茶叶名称查询
     * @param name
     * @return
     */
    List<ZyTea> selectByName(@Param("name")String name);

    /**
     * 所有列表
     */
    List<ZyTea> selectAll();

    /**
     * 将关联的茶叶表中brewsId字段置为空
     * @param brewsId
     */
    void updateBrewsIdToNull(@Param("brewsId")Integer brewsId);
}
